import 'package:plugin_platform_interface/plugin_platform_interface.dart';

import 'flutter_plugin_print_a300_method_channel.dart';

abstract class FlutterPluginPrintA300Platform extends PlatformInterface {
  /// Constructs a FlutterPluginPrintA300Platform.
  FlutterPluginPrintA300Platform() : super(token: _token);

  static final Object _token = Object();

  static FlutterPluginPrintA300Platform _instance = MethodChannelFlutterPluginPrintA300();

  /// The default instance of [FlutterPluginPrintA300Platform] to use.
  ///
  /// Defaults to [MethodChannelFlutterPluginPrintA300].
  static FlutterPluginPrintA300Platform get instance => _instance;

  /// Platform-specific implementations should set this with their own
  /// platform-specific class that extends [FlutterPluginPrintA300Platform] when
  /// they register themselves.
  static set instance(FlutterPluginPrintA300Platform instance) {
    PlatformInterface.verifyToken(instance, _token);
    _instance = instance;
  }

  Future<String?> getPlatformVersion() {
    throw UnimplementedError('platformVersion() has not been implemented.');
  }

  //获取打印设备集合
   Future<dynamic> addressList() async {
     throw UnimplementedError('addressList() has not been implemented.');
  }

  //执行打印
  Future<String>  nativePrint(Map<String, String> dataJson, String? blueAddress) async {
    throw UnimplementedError('addressList() has not been implemented.');
  }

}
